package atech.ace.mapping.persistence.entities;

import java.io.Serializable;
import javax.persistence.*;
import java.util.List;


/**
 * The persistent class for the project database table.
 * 
 */
@Entity
@Table(name="project")
public class Project implements Serializable {
	private static final long serialVersionUID = 1L;
	private String projectID;
	private double latitude;
	private String location;
	private double longitude;
	private String projectName;
	private List<HumanResource> humanResources;
	private Company company;

    public Project() {
    }


	@Id
	@Column(name="ProjectID")
	public String getProjectID() {
		return this.projectID;
	}

	public void setProjectID(String projectID) {
		this.projectID = projectID;
	}


	@Column(name="Latitude")
	public double getLatitude() {
		return this.latitude;
	}

	public void setLatitude(double latitude) {
		this.latitude = latitude;
	}


	@Column(name="Location")
	public String getLocation() {
		return this.location;
	}

	public void setLocation(String location) {
		this.location = location;
	}


	@Column(name="Longitude")
	public double getLongitude() {
		return this.longitude;
	}

	public void setLongitude(double longitude) {
		this.longitude = longitude;
	}


	@Column(name="ProjectName")
	public String getProjectName() {
		return this.projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}


	//bi-directional many-to-many association to HumanResource
	@ManyToMany(mappedBy="projects")
	public List<HumanResource> getHumanResources() {
		return this.humanResources;
	}

	public void setHumanResources(List<HumanResource> humanResources) {
		this.humanResources = humanResources;
	}
	

	//bi-directional many-to-one association to Company
    @ManyToOne
	@JoinColumn(name="CompanyID")
	public Company getCompany() {
		return this.company;
	}

	public void setCompany(Company company) {
		this.company = company;
	}
	
}